#ifndef __BE_STRINGHASH__
#define __BE_STRINGHASH__

#pragma pack(push, 1)

class StringHash
{
 private:

  union 
  {
      UINT64 hash[2];
      BYTE   md5[16];
  };

 public:
  StringHash();
  ~StringHash();

  bool operator==(const StringHash &_val) const;
  bool operator<(const StringHash &_val) const;

  operator bool() const;
  void reset();

  friend class System;
  friend class Cmd;
};

#pragma pack(pop)

#endif
